/////////////////////////////////////////////////////////////////////////
//
// Amuse Engine SDK - graphics/shaders
// Copyright( c) 2015.  All Rights Reserved
//
// File:		AEShaderConstantBuffer.inl
// Author:		Gianluca Belardelli
// Date:		05/02/2015
//
/////////////////////////////////////////////////////////////////////////
#ifndef _AESHADERCONSTANTBUFFER_INL_
#define _AESHADERCONSTANTBUFFER_INL_

#if defined (AE_OPENGL) || defined (AE_OPENGLES2)

AE_FORCEINLINE AEUINT32 AEShaderConstantBuffer::GetMaxBindings( void )
{
	return m_nMaxBindings;
}

AE_FORCEINLINE AEUINT32 AEShaderConstantBuffer::GetMaxBlockSize( void )
{
	return m_nMaxBlockSize;
}

AE_FORCEINLINE AEUINT32 AEShaderConstantBuffer::GetMaxVertexBlocks( void )
{
	return m_nMaxVertexBlocks;
}

AE_FORCEINLINE AEUINT32 AEShaderConstantBuffer::GetaxFragmentBlocks( void )
{
	return m_nMaxFragmentBlocks;
}

#if defined (AE_OPENGL)
	AE_FORCEINLINE AEUINT32 AEShaderConstantBuffer::GetMaxGeometryBlocks( void )
	{
		return m_nMaxGeometryBlocks;
	}
#endif

#endif

AE_FORCEINLINE const AEShaderConstantTable *AEShaderConstantBuffer::GetConstantTable( void ) const
{
	return m_spTable.GetPtr();
}

#endif // _AESHADERCONSTANTBUFFER_INL_
